Video Cassette Recorders allow an end user to record an audio-visual program. When reviewing the recoded program the viewer may perform various operations such as fast forward (FF), fast reverse (REW), play (PLAY), slow motion (SM), slow reverse and pause (PAUSE).
Video on demand (VOD) systems are based upon a provision of programs to viewers over communication networks such as Hybrid Fiber Coax (HFC) networks. VOD providers are requested to allow end users to implement trick modes such as fast-forward, rewind and the like. Due to various control, bandwidth and additional constraints VOD do not really perform FF, REW but display a subset of frames out of the program to emulate a FF and REW mode.
End users may also purchase a Personal Video Recorder (PVR) device that allows them to store a program in MPEG format, thus defining a stored program. The stored program may be manipulated to provide FF and REW modes. This solution is costly as it either requires dedicated hardware and/or a subscription fee and also allows the end user to skip commercials. Accordingly, operators want to implement a PVR-like solution at their plant.
MPEG defines various methods for compressing and transmitting audio-visual information according to predefined timing schemes that allow displaying audio visual content embedded within media streams. Raw video streams are provided to an MPEG encoder. An array of 8×8 pixels are DCT transformed to a block of 8×8 DCT coefficient blocks. The DCT coefficient blocks are assembled to macroblocks. The macroblocks are assembled to slices, that represent a horizontal strip of a picture. The strips are combined to make a picture. Each picture has a header. The picture header includes a picture type information, indicating whether the picture is I-frame, P-frame or B-frame. Pictures are arranged at Group of Pictures (GOPs). A sequence of GOPS forms a video elementary stream. Video and audio elementary streams may be multiplexed to provide a transport stream or a program stream. In Transport streams, the elementary streams are packetized to PES packets. Each PES packet includes a header that includes a stream ID and timing information. The PES header also includes timing information such as PTS and DTS that define when the pictures are to be available to a viewer and when pictures are to be provided to a decoder, prior to said presentation
I-frames are independent in the sense that they include the entire information that is required for displaying a picture. A P-frame is decoded in response to information embedded within a previous frame, while a B-frames is decoded in response to information embedded within both a preceding and succeeding frame.
U.S. Pat. No. 6,065,050 of DeMoney suggests a system and method for indexing between various video streams that include trick play streams and normal play media streams in a video delivery system. These various streams were encoded in accordance to different presentation rates. The system generates index look up tables between the normal play media stream and the trick play streams. The table enables indexing between the streams by utilizing a normal play time standard, and associating normal play time values to offsets within the corresponding video streams. The normal play time standard is driven from the timing information of the normal play media stream. In response to a user instruction to PLAY, FF or REW the video stream, the system switches between normal play media stream and the corresponding trick play streams at predefined points that share the same normal play time value. The predefined points are stored at the look up table. U.S. Pat. No. 6,065,050 of DeMoney is incorporated herein by reference.
A disadvantage of some prior art methods results from the need to generate and store multiple streams for allowing trick modes.
The provision of both live media streams and trick play modes from data servers or media servers may impose a heavy burden upon the server and/or the network or link that connects the server to clients. This may require to dramatically increase the capabilities (and according increase the cost) of the said servers, communication link or network.
There is a need to provide a system and method that allows an efficient provision of live media to end users, as well as allowing an end user to implement trick modes such as fast forward, rewind and the like.
There is a need to provide a system and method for allowing efficient retrieval and storage of media streams and for allowing the retrieval and transmission of media streams according to predefined timing schemes to ensure the proper display of the audio-visual content embedded within media streams.
There is need to provide a system and method for allowing a service provider to provide FF, REW, PAUSE, SM services to an end-user, as well as live media streams. Thus an end user that is coupled to the service provider's facilities may perform various operations such as fast forward (FF), fast reverse (REW) and play (PLAY) and may also receive live streams.